In general, global illumination algorithms are mainly used to add realistic light effects to a three-dimensional screen in three-dimensional graphics. In order to obtain a physically accurate rendering result, it is necessary to realistically calculate an operation of light. However, complex calculations are required to accurately simulate the operations of an object in a scene and light, consuming a considerable amount of time. The most well-known methods for simulating light include ray tracing, radiosity, particle tracing, etc. Among them, the ray tracing is being most widely used.
The ray tracing draws the appearance of an object by tracing the travel route of light along the direction opposite to that in which the light enters a camera to calculate refraction and reflection of the light and then determine a pixel value. Probability-based Monte Carlo integration has been mainly used in order to obtain a photo-realistic rendering result in a physically-based global illumination renderer. However, a large number of samples and calculations are necessary to obtain a high-quality rendering image, improving the processing speed. Furthermore, since there exists a limit in optimization of a single CPU-based algorithm regarding Monte Carlo integration and Quasi-Monte Carlo integration, it is difficult to expect a high efficiency.
Since calculation of one pixel is completely independent from calculation of another one in the ray tracing, a ray tracing algorithm itself is most suitable for a parallel processing environment. Therefore, a parallel ray tracing method using a multiprocessor has been widely used. In the ray tracing, the processing speed can be improved basically by reducing a primitive intersection time between object primitives in the scene and rays and a Monte Carlo integration time. This is because the node traversal in the hierarchy, primitive intersection operation, and Monte Carlo integration is more expensive operations compared to the construction of object hierarchy, such as, kd-tree and BVH.
However, Monte Carlo integration is still the one of major bottlenecks in realistic image synthesis. Moreover, convincing methods for real-time processing have not been introduced yet.
As mentioned above, in conventional real time rendering systems, studies on development of hardware capable of accelerating ray tracing have been disclosed, but since they do not support a tracing function from a secondary ray, they cannot be applied to a photo-realistic rendering image synthesis fields. Furthermore, since the dedicated hardware for Monte Carlo integration has not been implemented, the performance for the global illumination image synthesis still cannot be remarkably improved.